A cloud-based application may be defined by one or more web pages and each web page may be composed of multiple components. Each component in a web page may include multiple user interface elements (e.g., texts boxes, buttons, labels, etc.) and may request information from a web server using server actions/requests. For example, a first web page may include a news feed component, which lists links and/or headlines of news articles; a weather component, which displays weather conditions at a location; and an email preview component, which displays a brief synopsis of email messages received at an email account (e.g., subject line, time received, etc.). Once loaded in a web browser on a client device of a user, the news feed component may request relevant news articles from a web server, the weather component may request weather information at the location from the web server, and the email preview component may request email message information from the web server. The requests corresponding to each component may be combined into a single request that is transmitted to the web server (i.e., a batch request). In response, the web server may transmit data describing news articles to be presented to the user via the news feed component, weather information to be displayed to the user via the weather component, and email message information to be displayed to the user via the email preview component.
Although the user is currently viewing/interacting with the above described first web page, at some point the user may decide to navigate to a second web page. For example, the user may select/click a comment link associated with a news article in the news feed component, which causes the web browser to request the second web page. The second web page may include a social networking component that displays social networking messages and/or allows the user to transmit/post a new message. To display the second web page to the user, the web browser of the client device requests the second web page, including the social networking component, in response to selecting/clicking the comment link. The request for the second web page may be transferred to a web server via a set of networks and the web server may respond to the requests with information describing the second web page, including the social networking component and associated record/content data to be displayed/presented in the social networking component. Upon receipt of the information describing the second web page, including information describing the social networking component, the web browser of the client device may render the second web page (e.g., render/load one or more files representing the second web page based on the received information describing the second web page).
The above-described scenario for loading the second web page in response to the selection by the user may result in a poor user experience. In particular, the user is forced to wait for (1) the web browser to request the second web page after selection of the comment link, (2) the web server to fulfill the request via the set of networks, and (3) the web browser to render/load the second web page. This delay may be frustrating for the user, particularly in scenarios where the user is attempting to conduct a task commonly performed by the user (i.e., the user commonly navigates to the second web page to access the social networking component).